package dao.interfaces.Alumno;

import java.util.List;

import dao.transferObjects.Gae.AlumnoTO;
import dao.transferObjects.Gae.CursoTO;
import dao.transferObjects.Gae.GaeTO;

public interface IAlumno {
	
	public int insertarAlumno(AlumnoTO alumno);
	public int modificarAlumno(AlumnoTO alumno);
	public int eliminarAlumno(AlumnoTO alumno);
	
	//Com este modificamos solo tipoFono, fono, correo
	public int modificarPerfilAlumno(AlumnoTO alumno);
	
	public int asignarAlumnoGae(GaeTO gae, AlumnoTO alumno);
	public int asignarAlumnoRepresentante(GaeTO gae);
	
	public int crearAlumnoCurso(AlumnoTO alumno);
	public int eliminarAlumnosCurso(CursoTO curso);
	public List<AlumnoTO> obtenerAlumnosCurso(CursoTO curso);
	public List<AlumnoTO> obtenerAlumnosGae(GaeTO gae);
	
	public List<Double> obtenerPromedioAlumno(int id_gae, int rut_gae);
	
	public int asignarNotaProducto(double nota, int id_gae, int rut_gae, int numero_producto);
	public int asignarNotaSocio(double promedioPautasGae, int id_gae, int rut_gae);
	public int asignarNotaFinal(int id_gae, int rut_gae);
	
	public int autoevaluarAlumnoGae(AlumnoTO alumno);
}
